package com.mingqijia.gassafety.db.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mingqijia.gassafety.db.entity.FuncArea;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @Author: duanhongxiang
 * @Date: 2024/6/13 20:59
 */
@Mapper
@Repository
public interface FuncAreaMapper extends BaseMapper<FuncArea> {


    /**
     *
     * @param deptIds
     * @return
     */
    List<FuncArea> queryCountByDeptIds(@Param("deptIds") List<String> deptIds);

    /**
     * 区，街道
     * @param spId
     * @return
     */
    List<FuncArea> treeList(@Param("spId") String spId);


    /**
     * 功能区列表
     * @param spId
     * @param funcCode
     * @param funcName
     * @return
     */
    List<FuncArea> businessAreaList(@Param("spId") String spId,
                                    @Param("funcCode") String funcCode,
                                    @Param("funcName") String funcName,
                                    @Param("start") Integer start,
                                    @Param("pageSize") Integer pageSize);



    void insertArea(@Param("model") FuncArea model);

    void updateArea(@Param("model") FuncArea model);

    /**
     * @Method updateFuncCode
     * @Author zm
     * @Description 查找func_code为空或空字符串的数据 并更新func_code,进行补救措施
     * @Date 2024/7/12 10:01
    */
    void repairFuncCode();

    Integer getRelationTradeNum(@Param("id") Integer id);

    Integer getFuncAreaMaxOrdinal(@Param("model") FuncArea model);
}
